package sun.superstring.stringdemo;

import java.util.Scanner;

public class StringDemo1 {
    public static void main(String[] args) {
        // 目标：创建字符串对象，封装要处理的字符串数据，调用String踢动的方法处理字符串
        // 1.推荐方式一：直接“”就可以创建字符串对象，封装字符串数据。
        String s1 = "hello 黑马";
        System.out.println(s1);
        System.out.println(s1.length());  // 处理字符串的方法

        // 2.方式二：通过构造器初始化对象
        String s2 = new String();  // 等价于 ""
        System.out.println(s2); // 空字符串

        String s3 = new String("hello java");
        System.out.println(s3);

        char [] chars = {'h', 'e', 'l', 'l', ' ', 'o', '赵', '子', '龙'};
        String s4 = new String(chars);
        System.out.println(s4);

        byte [] bytes = {97, 98, 99, 68, 65, 66};
        String s5 = new String(bytes);
        System.out.println(s5);

        System.out.println("============================");
        String t1 = "abc";
        String t2 = "abc";
        System.out.println(t1 == t2);

        String t3 = new String("abc");
        String t4 = new String("abc");
        System.out.println(t3 == t4);

        System.out.println("============================");
        // 调用字符串的方法，处理字符串数据。
        // 简易版的登录：
        String okLoginName = "admin";
        System.out.println("请输入您的登录名称：");
        Scanner sc = new Scanner(System.in);
        String loginName = sc.next();
        // loginName == okLoginName 默认比较的是地址
        // 判断字符串内容，建议用String提供的equals方法，只关心内容一样，就返回true，不关心地址
        if (loginName.equals(okLoginName)) {
            System.out.println("登录成功！");
        } else {
            System.out.println("登录失败！");
        }
        System.out.println("============================");
        // 18663666520 ===> 从0开始
        // 0 1 2 3 4 5 6 7 8 9 10
        System.out.println("请您用手机号码登录：");
        String phone = sc.next();

        System.out.println("系统显示以下手机号码进入：");
        String newPhone = phone.substring(0, 3) + "****" + phone.substring(7);
        // 包前不包后，012，    8-
        System.out.println(newPhone);
    }
}
